Kernel-Kernel Communication in a Shared-Memory Multiprocessor t
نویسندگان
چکیده
In the standard kernel organization on a shared-memory multiprocessor all processors share the code and data of the operating system; explicit synchronization is used to control access to kernel data structures. Distributed-memory multicomputers use an alternative approach, in which each instance of the kernel performs local operations directly and uses remote invocation to perform remote operations. Either approach to inter-kernel communication can be used in a NonUniform Memory Access (NUMA) multiprocessor, although the performance tradeoffs may not be apparent in advance. In this paper we compare the use of remote access and remote invocation in the kernel of a NUMA multiprocessor operating system. We discuss the issues and architectural features that must be considered when choosing an inter-kernel communication scheme, and describe a series of experiments on the BBN Butterfly designed to empirically evaluate the tradeoffs between remote invocation and remote memory access. We conclude that the Butterfly architecture is biased towards the use of remote invocation for most kernel operations, but that a small set of frequently executed operations can benefit from the use of remote access.
منابع مشابه
Kernel-Kernel communication in a shared-memory multiprocessor
In the standard kernel organization on a bus-based multiprocessor, all processors share the code and data of the operating system; explicit synchronization is used to control access to kernel data structures. Distributed-memory multicomputers use an alternative approach, in which each instance of the kernel performs local operations directly and uses remote invocation to perform remote operatio...
متن کاملThe Design of the PACLIB Kernel
This paper describes the runtime kernel of paclib, a new system for parallel algebraic computation on shared memory computers. paclib has been developed as a professional tool for the simple design and eecient implementation of parallel algorithms in computer algebra and related areas. It provides concurrency, shared memory communication, non-determinism, speculative parallelism, streams and pi...
متن کاملImplementation Issues for the Psyche Multiprocessor Operating System
Psyche is a parallel operating system under development at the University of Rochester. The Psyche user interface is designed to allow programs with widely differing concepts of process, sharing, protection, and communication to run efficiently on the same machine, and to interact productively. In addition, the Psyche development effort is addressing a host of implementation issues for large-sc...
متن کاملOptimized Memory-Based Messaging: Leveraging the Memory System for High-Performance Communication
Memory-based messaging, passing messages between programs using shared memory, is a recognized technique for e cient communication that takes advantage of memory system performance. However, the conventional operating system support for this approach is ine cient, especially for large-scale multiprocessor interconnects, and is too complex to e ectively support in hardware. This paper describes ...
متن کاملA Hybrid Approach to Trace Generation for Performance Evaluation of Shared-Bus Multiprocessors
This paper describes a hybrid methodology (based on both actual and synthetic reference streams) to produce traces representing significant complete workloads. By means of a software approach, we generate traces that include both user and kernel references, starting from source traces containing only user references. We consider the aspects of kernel that have a deeper impact on the multiproces...
متن کامل